Skip to content

feat: list authors in design - #2743

Merged
sidmohanty11 merged 2 commits into
mainfrom
design-authors
Aug 10, 2026
Merged

feat: list authors in design#2743
sidmohanty11 merged 2 commits into
mainfrom
design-authors

Conversation

@sidmohanty11

Copy link
Copy Markdown
Contributor

No description provided.

@sidmohanty11 sidmohanty11 changed the title feat: list authors feat: list authors in design Aug 7, 2026
@netlify

This comment has been minimized.

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Here's a visual recap of what changed:

Visual recap

Open the full interactive recap

@netlify

This comment has been minimized.

@netlify

This comment has been minimized.

@netlify

This comment has been minimized.

@netlify

This comment has been minimized.

@netlify

This comment has been minimized.

@netlify

This comment has been minimized.

@netlify

This comment has been minimized.

@netlify

This comment has been minimized.

@netlify

This comment has been minimized.

@netlify

This comment has been minimized.

@netlify

This comment has been minimized.

@builder-io-integration builder-io-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Builder reviewed your changes and found 2 potential issues 🟡

Review Details

Code Review Summary

PR #2743 adds owner email to the design listing action and surfaces creator bylines plus an author filter in the design library. The implementation has a good separation between action data, pure filtering helpers, localized strings, and UI state; normalization and the accompanying unit coverage handle casing, null owners, and unknown sessions safely. This is a standard-risk feature change.

Key Findings

  • 🟡 MEDIUM — The author Select can retain a selected option after that author disappears from the current design data, leaving an active but invisible filter.
  • 🟡 MEDIUM — The card byline eagerly mounts an avatar lookup for every visible owner in an unpaginated library, which can create a burst of requests and data-URL downloads in larger shared workspaces.

🧪 Browser testing: Will run after this review (PR touches UI code)

{viewerHasDesigns ? (
<SelectItem value={MY_DESIGNS}>{t("home.me")}</SelectItem>
) : null}
{authorEmails

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Reset the author filter when its selected option disappears

If the selected author has all of their designs removed or the list refreshes without that owner, author still contains the old email while the SelectItem is no longer rendered from authorEmails. The grid becomes empty but the control no longer exposes the active filter; reset the selection (including MY_DESIGNS when viewerHasDesigns becomes false) or derive a validated Select value from the current options.

Additional Info
Found by 1 of 3 review agents; independently confirmed from the state/options flow.

Fix in Builder

/** Who created a design, shown on its library card in shared workspaces. */
function DesignAuthorByline({ email }: { email: string }) {
const name = emailToName(email);
const avatarUrl = useAvatarUrl(email);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Avoid eager avatar requests for every design card

DesignAuthorByline mounts once per visible card and useAvatarUrl(email) fetches an avatar for each distinct owner email. Because the list is unpaginated, a shared library with many owners can trigger a burst of avatar requests and download data-URL images on initial render; consider batching/preloading the normalized author set or deferring avatar fetches while rendering the deterministic fallback.

Additional Info
Found by 1 of 3 review agents; independently confirmed against useAvatarUrl implementation.

Fix in Builder

@builder-io-integration builder-io-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Builder reviewed your changes — no new findings

Review Details

Incremental Code Review Summary

I reviewed the latest PR #2743 head and compared the complete randomized diff against the two unresolved findings from the previous review. The owner email action propagation, normalized author filtering, session/org handling, localized strings, card bylines, and test coverage remain consistent with the prior implementation. The two existing comments remain applicable and were intentionally not reposted or resolved: the selected author can become stale when its designs disappear, and card rendering eagerly starts avatar requests for visible owners.

Two independent code-review agents found no additional confirmed bugs, and the author helper tests passed in the available environment. This is a standard-risk UI/data-display change. No new review comments are being added.

🧪 Browser testing: Skipped — dev server is healthy, but all 17 browser test cases were blocked because executor sessions still lack Chrome navigation/screenshot tools; this is an infrastructure limitation, not a verified application result.

@sidmohanty11
sidmohanty11 merged commit b82e262 into main Aug 10, 2026
94 of 95 checks passed
@sidmohanty11
sidmohanty11 deleted the design-authors branch August 10, 2026 11:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants